﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using VemTransporte.Models.Basica;
using VemTransporte.Models.Fachada;

namespace VemTransporte.Views.UsuarioTransporte
{
    public partial class MenuUsuarioEndereco : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                Usuario usuarioLogado = (Usuario)Session["UsuarioLogado"];

                if (usuarioLogado != null)
                {
                    ImgFotoUsuario.ImageUrl = string.Format("/UsuarioFotos/{0}.jpg", usuarioLogado.Id);

                    if (usuarioLogado.Nome.IndexOf(" ") > 0)
                    {
                        LabelNomeUsuario.Text = usuarioLogado.Nome.Substring(0, usuarioLogado.Nome.IndexOf(" "));
                    }
                    else
                    {
                        LabelNomeUsuario.Text = usuarioLogado.Nome;
                    }

                    if (usuarioLogado.Endereco != null)
                    {
                        string cep = usuarioLogado.Endereco.Cep.Trim().Insert(5, "-");
                        TextBoxCep.Text = cep;
                        TextBoxEndereco.Text = usuarioLogado.Endereco.Logradouro;
                        TextBoxBairro.Text = usuarioLogado.Endereco.Bairro.Nome;
                        TextBoxCidade.Text = usuarioLogado.Endereco.Bairro.Cidade.Nome;
                        TextBoxEstado.Text = usuarioLogado.Endereco.Bairro.Cidade.Estado;
                    }
                }
                else
                {
                    Response.Redirect("Login.aspx");
                }

            }
        }

        protected void ButtonBuscaCEP_Click(object sender, EventArgs e)
        {
            Endereco end = Fachada.Instance.ProcurarEnderecoPorCep(TextBoxCep.Text.Replace(".", "").Replace("-",""));
            if (end != null)
            {
                TextBoxEndereco.Text = end.Logradouro;
                TextBoxBairro.Text = end.Bairro.Nome;
                TextBoxCidade.Text = end.Bairro.Cidade.Nome;
                TextBoxEstado.Text = end.Bairro.Cidade.Estado;
            }
            else
            {
                ScriptManager.RegisterStartupScript(UpdatePanel1, typeof(Page), "MSG", "javascript:alert('CEP não encontrado!');", true);
                //Response.Write("<script>window.alert('CEP Não encontrado!');</script>");
            }
        }

        protected void Button1_Click(object sender, EventArgs e)
        {
            Usuario usuarioLogado = (Usuario)Session["UsuarioLogado"];

            if (usuarioLogado != null)
            {
                //Não é obrigatório o usuário cadastrar um endereço
                Endereco end = Fachada.Instance.ProcurarEnderecoPorCep(TextBoxCep.Text.Replace(".", "").Replace("-", ""));
                if (end != null)
                {
                    usuarioLogado.Endereco = end;
                    Fachada.Instance.Salvar(usuarioLogado);
                    ScriptManager.RegisterStartupScript(this, this.GetType(), "Confimado", "alert('Cadastrado com sucesso!'); window.location='MenuUsuario.aspx';", true);
                }
                else
                {
                    ScriptManager.RegisterStartupScript(UpdatePanel1, typeof(Page), "MSG", "javascript:alert('CEP não encontrado!');", true);
                }

            }
            else
            {
                Response.Redirect("Login.aspx");
            }
        }
    }
}